package com.sunflower.common.core.validation.enums;

import cn.hutool.core.lang.PatternPool;
import lombok.Getter;

import java.util.regex.Pattern;

/**
 * TODO
 *
 * @author: SunLuQuan
 * @Date: 2024年05月10日 10:06
 * @Description: MobilePatternEnum
 */
@Getter
public enum MobilePatternEnum {

    /**
     * 移动电话
     * eg: 中国大陆： +86  180 4953 1399，2位区域码标示+11位数字
     * 中国大陆 +86 Mainland China
     */
    MOBILE(PatternPool.MOBILE),
    /**
     * 中国香港移动电话
     * eg: 中国香港： +852 5100 4810， 三位区域码+10位数字, 中国香港手机号码8位数
     */
    MOBILE_HK(PatternPool.MOBILE_HK),
    /**
     * 中国台湾移动电话
     * eg: 中国台湾： +886 09 60 000000， 三位区域码+号码以数字09开头 + 8位数字, 中国台湾手机号码10位数
     * 中国台湾 +886 Taiwan 国际域名缩写：TW
     */
    MOBILE_TW(PatternPool.MOBILE_TW),
    /**
     * 中国澳门移动电话
     * eg: 中国澳门： +853 68 00000， 三位区域码 +号码以数字6开头 + 7位数字, 中国澳门手机号码8位数
     * 中国澳门 +853 Macao 国际域名缩写：MO
     */
    MOBILE_MO(PatternPool.MOBILE_MO),
    /**
     * 座机号码<br>
     * pr#387@Gitee
     */
    TEL(PatternPool.TEL),
    /**
     * 座机号码+400+800电话
     *
     * @see <a href="https://baike.baidu.com/item/800">800</a>
     */
    TEL_400_800(PatternPool.TEL_400_800);

    private Pattern pattern;

    private MobilePatternEnum(Pattern pattern) {
        this.pattern = pattern;
    }
}
